package com.baizhi.service;

import com.baizhi.entity.CmfzUser;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import java.util.List;
import java.util.Map;

public interface CmfzUserService {
    void updateCmfzUser(Integer userId);//修改用户状态
    Page<CmfzUser> selectPage(String userTelphone,Integer page,Integer limit);//条件分页查询用户表
    //查询出用户表中男女人数  封装到一个集合中  在页面显示为一个柱状图
    List<Integer> selectBoyAndGril();
    //查询每个省份下的人数  返回省份和该省份下的人数
    List<Map> selectByProvince();
    //查询从当前时间往前n周的一周之内的注册量  即
//    n=1     1~7 天之内的注册人数
//    n=2    7~14 天之内的注册人数
//    n=3    14~21 天之内的注册人数
    List<Integer> selectByDateWeek();
    List<Integer> selectByDateWeek2();
    //定义一个业务方法  将上面三个查询图表的方法都封装进去  并且采用多线程
    // 什么情况采用多线程？  在一个方法中有多个查询（三个以上），并且每个查询的时间都很长时
    Map selectCountByThread();//返回map 是因为里面三个查询都有返回值  都有响应给页面  还用在不同的地方

    Map selectCountByThread2();
}
